The following description relates to information retrieval in a multiserver computing environment.
A database management system can include a computer system that includes one or more servers having access to one or more databases. A database is a collection of tables storing information about classes of physical or conceptual objects, and information about a particular object can be stored in a record that is represented as a row in a table. A collection of tables can be stored within one computer system or spread out among a network of multiple computer systems in a distributed landscape.
In a network of multiple distributed computer systems, users may enter queries that require a collection of results from multiple databases. In such cases, partial query results from different servers may have to be sent over the network and merged into a single result set by a dedicated server that merges the results. An example of a class of user query that requires the collection of data from multiple systems in a distributed landscape is that of collecting aggregate information satisfying some logical condition specified in the user query.
As a more specific example, a user may request a list of top-performing salespersons of a company within a geographical area in a particular year, to be sorted by the aggregated dollar value of sales, where the information to be aggregated is scattered across the geographical area in multiple databases of individual company sales outlets. In typical cases of this sort, when the query results are displayed, for example on a graphical user interface, only a subset of the total results are displayed at a time. However, in many cases, the complete result set is not needed, and the N displayed results are sufficient for the user. In such cases, if all servers send a complete set of their partial results, most of the collected data is thrown away.